Arch1tect's New Toy (Strategy Tester Version)Description:
The version of Arch1tect's New Toy indicator with Strategy Tester added.
This indicator tries to predict market trends by simply utilising 2 moving averages crossovers.
How it works:
Buy signals are triggered when the faster MA crosses over the slower MA from the downside to the upside.
Sell signals are triggered when the faster MA crosses under the slower MA from the upside to the downside.
How to use:
Take buys when buy signal is triggered AND close existing sell position
Take sells when sell signal is triggered AND close existing buy position
Note:
Settings are optimised for XAUUSD on the M1 chart.
Extra:
Alerts are included.
You can toggle between EMA, WMA and SMA to your liking.
Indicator version:
Cari dalam skrip untuk "MA Cross"
Adjustable MA & Alternating Extremities [LuxAlgo]Returns a moving average allowing the user to control the amount of lag as well as the amplitude of its overshoots thanks to a parametric kernel. The indicator displays alternating extremities and aims to provide potential points where price might reverse.
Due to user requests, we added the option to display the moving average as candles instead of a solid line.
Settings
Length: MA period, refers to the number of most recent data points to use for its calculation.
Mult: Multiplicative factor for each extremity.
As Smoothed Candles: Allows the user to show the MA as a series of candles instead of a solid line.
Show Alternating Extremities : Determines whether to display the alternating extremities or not.
Lag: Controls the amount of lag of the MA, with higher values returning a MA with more lag.
Overshoot: Controls the amplitude of the overshoots returned by the MA, with higher values increasing the amplitude of the overshoots.
Usage
Moving averages using parametric kernels allows users to have more control over characteristics such as lag or smoothness; this can greatly benefit the analyst. A moving average with reduced lag can be used as a leading moving average in a MA crossover system, while lag will benefit moving averages used as slow MA in a crossover system.
Increasing 'Lag' will increase smoothness while increasing 'overshoot' will reduce lag.
The following indicator puts more emphasis on its alternating extremities, an upper extremity will be shown once the high price crosses the upper extremity, while a low extremity will be shown once the low price crosses the lower extremity. These can be interpreted like extremities of a band indicator.
The MA using a length value of 200 with a multiplicative factor of 1.
In general, extremities will effectively return points where price might potentially bounce in ranging markets while closing prices under trending markets will often be found above an upper extremity and under a lower extremity.
Reducing the lag of the moving average allows the user to obtain a more timely estimate of the underlying trend in the price, with a better fit overall. This allows the user to obtain potentially pertinent extremities where price might reverse upon a break, even under trending markets.
In the above chart, the price initially breaks the upper extremity, however, we can observe that the upper extremity eventually reaches back the price, goes above it, provides a resistance, and effectively indicates a reversal.
Users can plot candles from the moving average, these are fairly similar to heikin-ashi candles in the sense that CandleOpen(t) ≠ CandleClose(t-1) , each point of the candle is calculated as follows for our indicator:
Open = Average between MA(t-1) and MA(t-2)
High = MA using the high price as input
Low = MA using the low price as input
Close = MA using the closing price as input
Details
Lag is defined as the effect of moving averages to reflect past price variations instead of new ones, lag can be observed by the user and is the main cause of false signals. Lag is proportional to the degree of filtering returned by the moving average.
Overshooting is a common effect encountered in non-lagging moving averages, and is defined as the tendency of a moving average to exceed a maximum level (or minimum level, which can be defined as undershooting )
MA and rolling maximum/minimum, both using a length of 50 bars. While we can think of lag as a cost of smoothness, we can think of overshooting as a cost for reduced lag on some occasions.
Explaining the kernel design behind our moving average requires understanding of the logic behind lag reduction in moving averages. This can prove to be complex for non informed users, but let's just focus on the simpler part; moving averages can be defined as a weighted sum between past prices and a set of coefficients (kernel).
MA(t) = b(0)C(t) + b(1)C(t-1) + b(2)C(t-2) + ... + b(n-1)C(t-n-1)
Where n is the period of the moving average. Lag is (non optimally) reduced by "underweighting" past prices - that is multiplying them by negative numbers.
The kernel used in our moving average is based on a modified sinewave. A weighted sum making use of a sinewave as a kernel would return an oscillator centered at 0. We can divide this sinewave by an increasing linear function in order to obtain a kernel allowing us to obtain a low lag moving average instead of a centered oscillator. This is the main idea in the design of the kernel used by our moving average.
The kernel equation of our moving average is:
sin(2πx^α)(1 - x^β)
With 1>x>0 , and where α controls the lag, while β controls the overshoot amplitude.
Using this equation we can obtain the following kernels:
Here only α is changed, while β is equal to 1. Values to the left would represent the coefficients for the most recent prices. Notice how the most significant coefficients are given to the oldest prices in the case where α increases.
Higher overshoot would require more negative values, this is controlled by β
Here only β is changed, while α is equal to 1. Notice how higher values return lower negative coefficients. This effectively increases the overshoots amplitude in our moving average. We can decrease α in order for these negative coefficients to underweight more recent values.
Using α = 0 allows us to simplify the kernel equation to:
1 - x^β
Using this kernel we can obtain more classical moving averages, this can be seen from the following results:
Using β = 1 allows us to obtain a linearly decreasing kernel (the one of a WMA), while increasing allows the kernel to converge toward a rectangular kernel (the one of SMA).
White MAThis modified indicator just based on my 2cent strategy & experience,
which is:-
MA6, MA20, MA50, MA200
However, I always turn off MA20 since I also use BB (20) indicator.
Generally, if small MA cross up big MA, then it becomes entry signal, & vice versa
Each entry signal need confirmation state which is next price should close higher than crossing price.
If price close lower than crossing price, then it will be invalid entry's signal,
while if price keep maintain at same value, then it's mean uncertain for me until it close whether above or below crossing price.
"Strategy 1" (General)
In TF1D, the pattern should fulfill my condition as below:-
- MA20 above MA50 (bullish uptrend)
- Price pullback at least touch MA20 for reversal (making Higher Low)
- Price break resistance of pullback's price
My entry signal only after it close above the resistance, near "support" (RBS, Resistance become Support)
My stop-loss, if and only if price touch previous SMA6 price (or SMA10)
Unfortunately, I haven't had any specific target price. It's depending on what kind of "player" you are. (achievement)
Few TPs those I used:-
- Price touch my Static Resistance on chart obtained from,
~ Pullback price
~ Fibo (1.61++)
~ Higher price in 3 months, 6 months, 1 year, 3 year, and so on. (road to ATH, All Time High)
- Price close outside Upper BB (Dynamic Resistance)
I don't assume sell signal by using crossing indicator as TP, it's more to stop-loss for me. (means stop from loss your profit)
"Strategy 2" (Reversal Entry)
In TF15 minutes, we are assuming entry signal when SMA6 cross up SMA50. However, it's still need confirmation by next closing price.
This strategy can be apply in TF1D although SMA20 doesn't cross up SMA50 yet.
That's all my sharing strategy/system based on my 2cent experience, it's not a prefects strategy but I hope it will gives some idea for you guys in order to obtain your own system.
Combined EMA & MA crossovers [CDI]Implementation of the strategy of moving averages crossings combining two fast and two slow that are used to confirm the entry.
The purpose is to be able to quickly see a backtesting of the strategy by easily configuring the profit / loss percentage. In this script the profit percentage is used for the loss percentage as well.
Additionally you can see the moving averages all in a single chart tool.
In the community to which I belong, this strategy is used in daily candles, especially for swing trading, but it can be used in different time frames.
WARNING:
- For purpose educate only
- The entries are used under your responsibility
EMA_cumulativeVolume_crossover [indicator]while I was doing some research with exp MA crossovers and volume indicator , I have noticed that when ema 50 is above cumulative volume of 100 period , shows to capture nice profits in that trend. Shorting also (ema50 cross down volume of 100 period) also shows nice results.
BUY
When ema50 crossover cumulative volume of 100 period
Exit
When ema50 cross down cumulative volume of 100 period
Short Selling
Reverse above BUY conditions
Back ground color shows blue when ema50 is above cumulative volume of 100 period, shows purple when ema50 is below cumulative volume of 100 period
I will publish the strategy for back testing later today
Warning
For the use of educational purpose only
Bitlinc MARSI Study AST w/ Take Profit & Stop loss - beta 0.1This script is beta 0.1 - will update as soon as the script is tradable
This script is based on AST on a 10 minute timeframe. You can change the asset and the timeframe for any asset you want to trade, but for it to work correct ALL settings have to be testes in the Strategy section of the TradingView. Each assets and timeframe require a different mixture of settings. This is NOT a one settings fits all trading for all assets on any timeframe. Below are the settings and explanation on how it works.
How it fires a buy / sell:
The script will plot an RSI with upper and lower bands in a separate indicator window. The idea behind this script is to fire a LONG when MA crosses OVER lower band and fire a SHORT when the MA crosses under the lower band. Each order that fires is an OCO (Order Cancels Order) for pyramiding.
Settings:
You have full control of these settings as mentioned above, you must configure every part of this script for each asset and timeframe you trade.
- Length of MA
- Length
- Upper bands of RSI
- Lower bands of RSI
- Take profit percentage
- Stop loss percentage
- Month to start and end the strategy (within 2020)
- Day to start and end the strategy (within 2020)
- Quantity type
- Slippage
- Pyramiding
***Remember that after the signal to enter or exit a trade is fired, the alert will trigger AFTER the close of the candle that caused the tigger to fire
VPCI MA cross [LM]Hello guys,
I would like to introduce you a script that combines two indicators: VPCI( volume price confirmation indicator) and donchian MAs
VPCI:
Fundamentally, the VPCI reveals the proportional imbalances between price trends and volume-adjusted price
trends. An uptrend with increasing volume is a market characterized by greed supported by the fuel needed to
grow. An uptrend without volume is complacent and reveals greed deprived of the fuel needed to sustain itself.
Investors without the influx of other investors ( volume ) will eventually lose interest and the uptrend should
eventually breakdown.
A falling price trend reveals a market driven by fear. A falling price trend without volume reveals apathy, fear
without increasing energy. Unlike greed, fear is self-sustaining, and may endure for long time periods without
increasing fuel or energy. Adding energy to fear can be likened to adding fuel to a fire and is generally bearish
until the VPCI reverses. In such cases, weak-minded investor's, overcome by fear, are becoming irrationally
fearful until the selling climax reaches a state of maximum homogeneity. At this point, ownership held by weak
investor’s has been purged, producing a type of heat death capitulation. These occurrences may be visualized by
the VPCI falling below the lower standard deviation of a Bollinger Band of the VPCI, and then rising above the
lower band, and forming a 'V' bottom.
I have used MA's on top of VPCI and looking for crosses. Percatage that is shown in label is calculation of difference between previous cross and current close price. So you know if you would be flipping what % you would gain or loose, all is rounded with precission of two
DONCHIAN
I took donchain calculation from ichimoku to calculate conversion line and base line(both are giving me information about whether it's trending or not and distance from the mean)
There are various sections in setting:
VPCI - setting of MA lengths(for smaller timeframes I recommend using bigger MA length)
DONCHAIN - setting length for conversion and base line
Any suggestions are welcome
Price Volume Rank [LazyBear]Price-Volume Rank, designed by Anthony J. Macek, compares the direction of the change in price (up or down) to the direction of the change in volume and assigns a number to that specific relationship. By quantifying price/volume interaction, P-V rank seeks to determine our position within a typical market cycle.
The various modes shown on the chart above or explained below. Also, read on for a little trick using the new Pine feature that you can use in your script.
How to read the PVR?
-------------------
The most desirable market condition occurs when both price and volume are moving up, that phenomenon is assigned a PVR of 1.
The next most desirable condition, when prices are still moving up but volume is diminishing, is given a PVR of 2. Although still technically healthy, this relationship between price and volume issues a warning that market momentum is weakening.
The worst-case scenario, seen when selling pressure is greatest with prices dropping and volume
increasing, is given PVR's weakest designation, 4.
Finally, even though prices are still moving down, volume begins to diminish as selling pressure abates. This price/volume relationship is assigned a PVR of 3, often alerting us to a potential buying opportunity ahead.
What do the modes mean?
----------------------
1) Histogram Mode: This plots PVR along with helpful ranges. Be careful when PVR is trending at turn-around points.
2) MA Crossover Mode: This plots a slow/fast MA of PVR. Default is 5/10 SMA. Buy is signalled when slow MA falls below fast MA. Sell is signalled when slow MA crosses up fast MA. There is a warning line at 2.5 that can be used for more confirmation.
3) Double Smoothed Crossover Mode: Same as MA crossover, but PVR is smoothed more. Warning line (2.5 level) is very useful in this mode. Use slow MA as the signal and fast MA of PVR for tracking the market.
Misc notes:
-----------
This won't work for Forex and other instruments for which TradingView doesn't expose volume. Thanks to the new Text rendering feature of PlotShape(), I can actually let users know of that :) Good use-case, eh? I will post a sample chart below in the comments.
Feel free to use any part of this code in your indicators.
More info:
--------
Stocks & Commodities V. 12:6 (235-239): Price-Volume Rank by Anthony J. Macek
Complete list of my indicators:
-----------------------------
docs.google.com
ReadyFor401ks Just Tell Me When!ReadyFor401ks Just Tell Me When!
LET ME START BY SAYING. NO INDICATOR WILL HELP YOU NAIL THE PERFECT ENTRY/EXIT ON A TRADE. YOU SHOULD ALWAYS EDUCATE YOURSELF AND HAVE A BASIC UNDERSTANDING OF INVESTING, TRADING, CHART ANALYSIS, AND THE RISKS INVOLVED WITH. THAT BEING SAID, WITH THE RIGHT ADJUSTMENTS, IT'S PRETTY D*$N CLOSE TO PERFECTION!
This indicator is designed to help traders identify t rend direction, continuation signals, and potential exits based on a dynamic blend of moving averages, ATR bands, and price action filters. Whether you’re an intraday trader scalping the 5-minute chart or a swing trader analyzing the weekly timeframe for LEAPS , this tool provides a clear, rule-based system to help guide your trading decisions.
⸻
Key Features & Benefits
🔹 Customizable Trend Power (Baseline) Calculation
• Choose from JMA, EMA, HMA, TEMA, DEMA, SMA, VAMA, and WMA for defining your baseline trend direction.
• The baseline helps confirm whether the market is in a bullish or bearish phase.
🔹 ATR-Based Trend Continuation & Volatility Measurement
• ATR bands dynamically adjust to market conditions, helping you spot breakouts and fakeouts.
• The indicator detects when price violates ATR range , which often signals impulse moves.
🔹 Clear Entry & Exit Signals
• Uses a Continuation MA (SSL2) to confirm trends.
• Includes a separate Exit MA (SSL3) that provides crossover signals to indicate when to exit trades or reverse positions .
• Plots trend continuation circles when ATR conditions align with trend signals.
🔹 Keltner Channel Baseline for Market Structure
• A modified Keltner Channel is integrated into the baseline to help filter out choppy conditions .
• If price remains inside the baseline, the market is in consolidation , while breakouts beyond the bands indicate strong trends .
🔹 Adaptive Color Coding for Market Conditions
• Bars change color based on momentum, making trend direction easy to read.
• Green = Bullish Trend, Red = Bearish Trend, Gray = Neutral/Chop.
🔹 Flexible Alerts for Trade Management
• Get real-time alerts when the Exit MA crosses price , helping you l ock in profits or switch directions .
⸻
How to Use This Indicator for Different Trading Styles
🟢 For Intraday Trading (5-Minute Chart Setup)
• Faster MA settings help react quickly to momentum shifts.
• Ideal for scalping breakouts, trend continuation setups, and intraday reversals.
• Watch for ATR violations and price interacting with the baseline/Keltner Channel for entries.
--------------------------------
My Settings for Intraday Trading on 5min Chart
ATR Period: 15
ATR Multi: 1
ATR Smoothing: WMA
Trend Power based off of: JMA
Trend Power Period: 30
Continuation Type: JMA
Continuation Length: 20
Calculate Exit of what MA?: HMA
Calculate Exit off what Period? 30
Source of Exit Calculation: close
JMA Phase *APPLIES TO JMA ONLY: 3
JMA Power *APPLIES TO JMA ONLY: 3
Volatility Lookback Period *APPLIES TO VAMA ONLY 30
Use True Range for Channel? Checked
Base Channel Multiplier: 0.4
ATR Continuation Criteria: 1.1
----------------------------------
🔵 For Swing Trading & LEAPS (Weekly Chart Setup - Default Settings)
• Slower MAs provide a broader view of trend structure.
• Helps capture multi-week trend shifts and confirm entry points for longer-term trades.
• Weekly ATR bands highlight when stocks are entering overextended conditions.
💡 Example:
Let’s say you’re looking at TSLA on a Weekly Chart using the default settings. You notice that price crosses above the continuation MA (SSL2) while remaining above the baseline (trend power MA). The bar turns green, and price breaks above ATR resistance, signaling a strong bullish continuation. This could be a great opportunity to enter a long-term swing trade or LEAPS options position.
On the flip side, if price reverses below the Exit MA (SSL3) and turns red while breaking the lower ATR band, it might signal a good time to exit longs or enter a short trade.
⸻
Final Thoughts
The ReadyFor401ks Just Tell Me When! indicator is an all-in-one trading system that simplifies trend-following, volatility measurement, and trade management. By integrating multiple moving average types, ATR filters, and clear visual cues, it allows traders to stay disciplined and remove emotions from their trading decisions.
✅ Perfect for scalpers, day traders, and swing traders alike!
🔔 Set up alerts for automated trade signals and never miss a key move!
💬 If you find this indicator useful, leave a comment and share how you use it in your trading! 🚀
Moving Average Crossover StrategyCertainly! Below is an example of a professional trading strategy implemented in Pine Script for TradingView. This strategy is a simple moving average crossover strategy, which is a common approach used by many traders. It uses two moving averages (a short-term and a long-term) to generate buy and sell signals.
Input Parameters:
shortLength: The length of the short-term moving average.
longLength: The length of the long-term moving average.
Moving Averages:
shortMA: The short-term simple moving average (SMA).
longMA: The long-term simple moving average (SMA).
Conditions:
longCondition: A buy signal is generated when the short-term MA crosses above the long-term MA.
shortCondition: A sell signal is generated when the short-term MA crosses below the long-term MA.
Trade Execution:
The strategy enters a long position when the longCondition is met.
The strategy enters a short position when the shortCondition is met.
Plotting:
The moving averages are plotted on the chart.
Buy and sell signals are plotted as labels on the chart.
How to Use:
Copy the script into TradingView's Pine Script editor.
Adjust the shortLength and longLength parameters to fit your trading style.
Add the script to your chart and apply it to your desired timeframe.
Backtest the strategy to see how it performs on historical data.
This is a basic example, and professional traders often enhance such strategies with additional filters, risk management rules, and other indicators to improve performance.
Enhanced VIP-like IndicatorSettings Breakdown Tutorial: Optimizing a Trading Strategy
This guide explains the key trading strategy settings and how to customize them based on your trading style and goals. Each parameter is essential for tailoring the strategy to market conditions and your risk appetite.
1. Short Moving Average Length (Default: 9)
• Purpose: Tracks short-term trends using a small number of candles.
• Settings Tips:
• Smaller Values (e.g., 9): Quickly react to price changes, useful for fast-moving markets.
• Larger Values (e.g., 12-15): Generate smoother signals for less volatile trades.
2. Long Moving Average Length (Default: 21)
• Purpose: Identifies long-term trends.
• Settings Tips:
• Higher Values (e.g., 50): Spot broader trends at the expense of slower signals.
• Trend Analysis: The interaction of short and long MAs helps determine bullish or bearish trends (e.g., bullish when short MA crosses above long MA).
3. Higher Timeframe MA Length (Default: 200)
• Purpose: Filters long-term trends on a higher timeframe (e.g., daily).
• Settings Tips:
• 200 Periods: Standard for defining bullish (price above) or bearish (price below) markets.
• Adjustable: Use 100 for faster responses or stick with 200 for reliability.
4. Higher Timeframe (Default: 1 Day)
• Purpose: Defines the timeframe for the higher moving average.
• Settings Tips:
• Shorter Timeframes (e.g., 4 Hours): More frequent trading signals.
• Daily Timeframe: Best for swing trading and identifying macro trends.
5. RSI Length (Default: 14)
• Purpose: Measures momentum over a specific number of candles.
• Settings Tips:
• Lower Values (e.g., 7): More sensitive to price changes, ideal for quick trades.
• Higher Values (e.g., 20): Smooth signals for more stable markets.
6. RSI Overbought (70) and Oversold (30) Levels
• Purpose: Marks thresholds for overbought and oversold conditions.
• Settings Tips:
• Stricter Levels (e.g., 80/20): Fewer, higher-quality signals.
• Looser Levels (e.g., 65/35): More frequent signals, suitable for active trading.
7. Pivot Left Bars (5) and Pivot Right Bars (5)
• Purpose: Confirms pivot points (support/resistance) based on surrounding candles.
• Settings Tips:
• Higher Values (e.g., 10): Stronger but less frequent pivot points.
• Lower Values: More responsive, for traders seeking quick pivots.
8. Take Profit Percentage (Default: 2%)
• Purpose: Defines the profit level to exit trades.
• Settings Tips:
• Higher Values (e.g., 5%): For swing traders holding positions longer.
• Lower Values (e.g., 1%): For scalpers focusing on quick trades.
9. Minimum Volume (Default: 1,000,000)
• Purpose: Ensures sufficient liquidity for trading.
• Settings Tips:
• Lower Values: For lower-volume markets.
• Higher Values: Reduces risk in high-liquidity assets.
10. Stop Loss Percentage (Default: 1%)
• Purpose: Sets the maximum acceptable loss per trade.
• Settings Tips:
• Lower Values (e.g., 0.5%): Reduces risk, suited for conservative trading.
• Higher Values (e.g., 2%): Allows more price fluctuation, ideal for volatile markets.
11. Entry Conditions
• Options:
• MA Crossover & RSI: Combines trend-following and momentum for well-rounded signals.
• Pivot Breakout: Focuses on support/resistance breakouts for high-impact trades.
• Settings Tips:
• Trend-Following Traders: Use MA Crossover & RSI.
12. Exit Conditions
• Options:
• Opposite Signal: Exits when the trade’s opposite condition occurs (e.g., bullish to bearish).
• Fixed Take Profit/Stop Loss: Exits based on predefined profit/loss thresholds.
• Settings Tips:
• Opposite Signal: Ideal for trend-following strategies.
Summary
Customizing these settings aligns the strategy with your trading goals. Test configurations in a demo environment before live trading to refine the approach and optimize results. Always balance profit potential with risk management.
• Fixed Levels: Better for strict risk management.
• Breakout Traders: Opt for Pivot Breakout.
OBV + Custom MA StrategyFor a long time, the use of the OBV indicator has been relatively monotonous, with its expression and content lacking diversity. Therefore, I'm considering trying new ways of representation.
This "OBV + Custom MA Strategy" indicator combines the On-Balance Volume (OBV) with customizable moving averages (SMA, EMA, or WMA) to provide advanced insights into market trends. The indicator calculates OBV manually and overlays two moving averages: a short-term and a long-term MA. Key features include:
OBV plotted alongside short-term and long-term moving averages for better trend visualization.
Signals generated when OBV crosses the short-term MA or when the short-term MA crosses the long-term MA.
Alerts for bullish and bearish crossovers to help identify potential buy or sell opportunities.
This indicator is suitable for traders looking to incorporate volume dynamics into their strategy while customizing their moving average type and periods.
中文说明
此“OBV + 自定义均线策略”指标结合了成交量指标OBV与可定制的移动均线(SMA、EMA或WMA),为市场趋势分析提供了更多的视角。该指标手动计算OBV,并叠加短期与长期均线,主要特点包括:
绘制OBV以及短期和长期均线,以更清晰地观察趋势。
当OBV上穿/下穿短期均线或短期均线上穿/下穿长期均线时,生成买卖信号。
提供多种看涨和看跌信号的警报,帮助识别潜在的买入或卖出机会。
此指标适合希望将成交量动态纳入策略的交易者,并支持自定义均线类型和周期以满足个性化需求。
Multi Adaptive Moving Average (MAMA)The Multi Adaptive Moving Average (MAMA) indicator is an advanced tool for technical analysis, designed to provide traders with a detailed understanding of market trends and potential future price movements. This indicator utilizes multiple Simple Moving Averages (SMAs) and forecasting techniques to enhance decision-making processes.
Simple Moving Averages (SMAs):
Short MA (20-period): This moving average is highly responsive to price changes, making it ideal for capturing short-term trends. It helps traders identify quick market shifts and potential entry or exit points.
Mid MA (50-period): This average strikes a balance between short- and long-term trends, offering insights into the market's intermediate direction. It aids in confirming the sustainability of short-term trends.
Long MA (100-period): By smoothing out price data over a longer period, this moving average is useful for identifying long-term trends and filtering out short-term volatility.
Very Long MA (200-period): Often considered a critical indicator for determining the overall market trend, this average helps confirm the direction and strength of long-term movements.
Forecasting:
Flat Forecast: This approach assumes that prices will remain constant in the near future, which is particularly useful in markets trading sideways without a clear trend direction.
Linear Regression Forecast: This method uses historical data to project future price movements, offering a dynamic forecast based on existing trends. It helps traders anticipate potential price changes and plan their strategies accordingly.
Advantages:
Comprehensive Trend Analysis: By incorporating four different SMAs, the indicator provides a layered view of market trends across various timeframes. This enables traders to identify potential trend reversals and continuations with greater accuracy.
Predictive Insights: The forecasting feature offers traders a forward-looking perspective, enabling them to anticipate market movements and adjust their trading strategies proactively. This can be especially advantageous in volatile markets.
Customization: The MAMA indicator is highly customizable, allowing traders to adjust parameters such as the source of price data and the inclusion of the current unclosed candle. This flexibility ensures that the indicator can be tailored to fit different trading styles and market conditions.
Visual Clarity: The use of distinct colors for each SMA and their forecasts enhances visual interpretation, making it easier for traders to quickly assess market conditions and make informed decisions. The inclusion of a legend further aids in distinguishing between the different moving averages and their respective forecasts.
How to Use:
Trend Confirmation: Use the alignment of the SMAs to confirm market trends. For example, when the Short MA crosses above the Mid and Long MAs, it may indicate a bullish trend, while the opposite could suggest a bearish trend.
Entry and Exit Points: Look for crossovers between the SMAs as potential signals for entering or exiting trades. The forecasts can help in timing these decisions by providing an expectation of future price movements.
Risk Management: Utilize the Very Long MA to set stop-loss and take-profit levels, as it reflects the long-term trend and can help in avoiding trades against the prevailing market direction.
The MAMA indicator is intended to support technical analysis and should not be used as the sole basis for making trading decisions. Financial markets are inherently uncertain, and past performance does not guarantee future results. Traders should use this tool in conjunction with other analytical methods and consider their risk tolerance and investment objectives. It is advisable to conduct thorough research and consult with a financial advisor before making significant trading decisions. Always be aware of the risks involved in trading and invest only what you can afford to lose.
Moving Average-TREND POWER v2.0-(AS)HELLO:
-This indicator is a waaaay simpler version of my other script - Moving Average-TREND POWER v1.1-(AS).
HOW DOES IT WORK:
-Script counts number of bars below or above selected Moving Average (u can se them by turning PLOT BARS on). Then multiplies number of bars by 0.01 and adds previous value. So in the uptrend indicator will be growing faster with every bar when price is above MA. When MA crosess price Value goes to zero so it shows when the market is ranging.
If Cross happens when number of bars is higher than Upper threshold or below Lower threshold indicator will go back to zero only if MA crosses with high in UPtrend and low in DNtrend. If cross happens inside THSs Value will be zero when MA crosses with any type of price source like for example (close,high,low,ohlc4,hl etc.....).This helps to get more crosess in side trend and less resets during a visible trend
HOW TO SET:
Just select what type of MA you want to use and Length. Then based on your preference set values of THSs'
OTHER INFORMATIONS:
-Script was created and tested on EURUSD 5M.
-For bigger trends choose slowerMAs and bigger periods and the other way around for short trends (FasterMAs/shorter periods)
-Below script code you can find not used formulas for calculating indicator value(thanks chat GPT), If you know some pinescript I encourage you to try try them or maybe bulid better ones. Script uses most basic one.
-Pls give me some feedback/ideas to improve and check out first version. Its way more complicated for no real reason but still worth to take a look'
-Also let me know if you find some logical errors in the code.
Enjoy and till we meet again.
Davin's 10/200MA Pullback on SPY Strategy v2.0Strategy:
Using 10 and 200 Simple moving averages, we capitalize on price pullbacks on a general uptrend to scalp 1 - 5% rebounds. 200 MA is used as a general indicator for bullish sentiment, 10 MA is used to identify pullbacks in the short term for buy entries.
An optional bonus: market crash of 20% from 52 days high is regarded as a buy the dip signal.
An optional bonus: can choose to exit on MA crossovers using 200 MA as reference MA (etc. Hard stop on 50 cross 200)
Recommended Ticker: SPY 1D (I have so far tested on SPY and other big indexes only, other stocks appear to be too volatile to use the same short period SMA parameters effectively) + AAPL 4H
How it works:
Buy condition is when:
- Price closes above 200 SMA
- Price closes below 10 SMA
- Price dumps at least 20% (additional bonus contrarian buy the dip option)
Entry is on the next opening market day the day after the buy condition candle was fulfilled.
Sell Condition is when:
- Prices closes below 10 SMA
- Hard stop at 15% drawdown from entry price (adjustable parameter)
- Hard stop at medium term and long term MA crossovers (adjustable parameters)
So far this strategy has been pretty effective for me, feel free to try it out and let me know in the comments how you found :)
Feel free to suggest new strategy ideas for discussion and indicator building
RSI SMA Crossover StrategyOverview
RSI SMA Crossover Strategy works the same way as traditional MA crossover strategies, but using RSI instead of price. When RSI crosses over the SMA, a long position is opened (buy). When RSI crosses under the SMA, the long position is closed (sell).
This strategy can be very effective when the right inputs are used (see below). Be sure to use the backtesting tool to determine the optimal parameters for a given asset/timeframe.
Inputs/Parameters
RSI Length: length for RSI calculation (default = 50)
SMA Length: length for SMA calculation (default = 25)
Strategy Properties
Initial Capital = $1000
No default properties are defined for Slippage, Commission, etc, so be sure to set these values to get accurate backtesting results. This script is being published open-source for a reason - save yourself a copy and adjust the settings as you like!
Backtesting Results
Testing on Bitcoin (all time index) 1D chart, with all default parameters.
$1,000 initial investment on 10/07/2010 turns into almost $2.5 billion as of 08/30/2022 (compared to $334 million if the initial investment was held over the same period)
Remember, results can vary greatly based on the variables mentioned above, so always be sure to backtest.
Multi Type RSI [Misu]█ This Indicator is based on RSI ( Relative Strength Index ) & multiple type of MA (Moving Average) to show different variations of RSI.
The relative strength index (RSI) is a momentum indicator used in technical analysis to evaluate overvalued or undervalued conditions in the price of that security.
█ Usages:
The purpose of this indicator is to obtain the RSI calculated with different MAs modes instead of the classic RMA.
The red and green zones indicate the oversold and overbought zones.
Buy or sell signals are marked by the green and red circles
We have 2 different signal modes : when the different size RSIs cross and when the fast RSI crosses the extreme bands.
Alerts are setup.
█ Parameters:
Lenght RSI: The lenght of the RSI. (14 by default)
RSI MA Type: The type of MA with which the rsi will be calculated. ("SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA")
Fast Lenght MA: The fast lenght smoothing MA.
Slow Lenght MA: The Slow lenght smoothing MA.
Lower Band: The lenght of the lower band. (25 by default)
Upper Band: The lenght of the upper band. (75 by default)
Signal Type: The mode with which buy and sell signals are triggered. ("Cross 2 Mas", "Cross Ma/Bands")
RSI MA CrossBuilding onto the standard RSI indicator, with the following modification and improvements:
- Added signals for RSI moving average crossovers, which usually indicator a bull or bear trend
- Added option to use smoothed RSI line
- Added alert for crossover signals
Enjoy~~~!
Aggregated Chaikin Money Flow - InFinitoModified Version of In-Built Chaikin Money Flow Indicator. Aggregated Volume is used for it's calculation + a couple of other features.
Aggregation code originally from Crypt0rus
***The indicator can be used for any coin/symbol to aggregate volume , but it has to be set up manually***
***The indicator can be used with specific symbol data only by disabling the aggregation option, which allows for it to be used on any symbol***
- Calculated based on Aggregated Volume instead of by symbol volume. Using aggregated data makes it more accurate and allows to compare volume flow between different kinds of markets (Spot, Futures , Perpetuals, Futures+Perpetuals and All Volume ).
- As well, in order to make the data as accurate as possible, the data from each exchange aggregated is normalized to report always in terms of 1 BTC. In case this indicator is used for another symbol, the calculations can be adjusted manually to make it always report data in terms of 1 contract/coin.
- Added Moving Average ( SMA , EMA , WMA , RMA, VWMA) that can be plotted to the CMF
- Changed 0 line to a small range which tends to be more relevant than the 0 line. This range can be manually modified
Things to look for:
- Divergences: Can be a very good reversal signal
- MA crossovers: Can be a very good confluent Buy/Sell signal
- Center range retests: CMF is normally defined as bullish above 0 and bearish below 0. In this case it is above or below the middle range. Even if the start of the move was missed. The retest of the middle range can give very good entries.
- Confluence of the latter
Find Best Performing MA For Golden CrossHello!
This script calculates the performance of any asset following a golden cross of two moving averages of any length!
The calculated moving averages are: SMA, EMA, HMA, VWMA, WMA, LSMA, and ALMA
The best performing moving average for the selected data series is listed first, followed by a descending order.
The indicator works on any timeframe, any asset, and can even be used on indicators such as RSI, %b, %k, etc.
The Moving Average Length and Source Are Customizable!
The Moving Averages Can Be Plotted on Most Data Series, Such As:
Close, Open, Low, hlc3, RSI, %B, %K, Etc.
The Script Will Recalculate for the Timeframe (1m, 5m, D, etc.)!
The (XX Candles) Indicates the Average Number of
Sessions the Shorter Ma Remains Above the Longer Ma Following an Upside Cross!
The Percentages (XX.XX%) Indicate the Average
Percentage Price Gain/Loss Following a Golden Cross,
Until the Shorter Ma Crosses Back Under the Longer Ma!
In This Example I Am Using a 63 Session Length for the
Shorter Ma for All Listed Ma Types for Closing Prices, and a 196 Candle Length for the Longer Ma!
How to avoid repainting when NOT using security()Even when your code does not use security() calls, repainting dynamics still come into play in the realtime bar. Script coders and users must understand them and, if they choose to avoid repainting, need to know how to do so. This script demonstrates three methods to avoid repainting when NOT using the security() function.
Note that repainting dynamics when not using security() usually only come into play in the realtime bar, as historical data is fixed and thus cannot cause repainting, except in situations related to stock splits or dividend adjustments.
For those who don’t want to read
Configure your alerts to trigger “Once Per Bar Close” and you’re done.
For those who want to understand
Put this indicator on a 1 minute or seconds chart with a live symbol. As price changes you will see four of this script’s MAs (all except the two orange ones) move in the realtime bar. You are seeing repainting in action. When the current realtime bar closes and becomes a historical bar, the lines on the historical bars will no longer move, as the bar’s OHLC values are fixed. Note that you may need to refresh your chart to see the correct historical OHLC values, as exchange feeds sometimes produce very slight variations between the end values of the realtime bar and those of the same bar once it becomes a historical bar.
Some traders do not use signals generated by a script but simply want to avoid seeing the lines plotted by their scripts move during the realtime bar. They are concerned with repainting of the lines .
Other traders use their scripts to evaluate conditions, which they use to either plot markers on the chart, trigger alerts, or both. They may not care about the script’s plotted lines repainting, but do not want their markers to appear/disappear on the chart, nor their alerts to trigger for a condition that becomes true during the realtime bar but is no longer true once it closes. Those traders are more concerned with repainting of signals .
For each of the three methods shown in this script’s code, comments explain if its lines, markers and alerts will repaint or not. Through the Settings/Inputs you will be able to control plotting of lines and markers corresponding to each method, as well as experiment with the option, for method 2, of disabling only the lines plotting in the realtime bar while still allowing the markers and alerts to be generated.
An unavoidable fact is that non-repainting lines, markers or alerts are always late compared to repainting ones. The good news is that how late they are will in many cases be insignificant, so that the added reliability of the information they provide will largely offset the disadvantages of waiting.
Method 1 illustrates the usual way of going about things in a script. Its gray lines and markers will always repaint but repainting of the alerts the marker conditions generate can be avoided by configuring alerts to trigger “Once Per Bar Close”. Because this gray marker repaints, you will occasionally see it appear/disappear during the realtime bar when the gray MAs cross/un-cross.
Method 2 plots the same MAs as method 1, but in green. The difference is that it delays its marker condition by one bar to ensure it does not repaint. Its lines will normally repaint but its markers will not, as they pop up after the condition has been confirmed on the bar preceding the realtime bar. Its markers appear at the beginning of the realtime bar and will never disappear. When using this method alerts can be configured to trigger “Once Per Bar” so they fire the moment the marker appears on the chart at the beginning of the realtime bar. Note that the delay incurred between methods 1 and 2 is merely the instant between the close of a realtime bar and the beginning of the next one—a delay measured in milliseconds. Method 2 also allows its lines to be hidden in the realtime bar with the corresponding option in the script’s Settings/Inputs . This will be useful to those wishing to eliminate unreliable lines from the realtime bar. Commented lines in method 2 provide for a 2b option, which is to delay the calculation of the MAs rather than the cross condition. It has the obvious inconvenient of plotting delayed MAs, but may come in handy in some situations.
Method 3 is not the best solution when using MAs because it uses the open of bars rather than their close to calculate the MAs. While this provides a way of avoiding repainting, it is not ideal in the case of MA calcs but may come in handy in other cases. The orange lines and markers of method 3 will not repaint because the value of open cannot change in the realtime bar. Because its markers do not repaint, alerts may be configured using “Once Per Bar”.
Spend some time playing with the different options and looking at how this indicator’s lines plot and behave when you refresh you chart. We hope everything you need to understand and prevent repainting when not using security() is there.
Look first. Then leap.
Moving Average Cross StrategySimply choose your moving averages and backtest shorting and longing the crossing of these MA's. Meant for dialing in MA crosses as part of a trading setup and not reason enough to take the trade. First script, work in progress.
Grid + Trade Annotations & Liquidations## Introducing the “Grid + Trade Annotations & Liquidations” Pine Script Strategy
Imagine you could overlay a perfectly-spaced price grid on your favorite chart, backtest a simple moving-average crossover, see exactly where trades would have fired off in the past—and even know at what price you’d have been liquidated if you were running at 10× leverage. That’s exactly what this all-in-one TradingView **Pine Script® v6** strategy delivers.
### Why you’ll love it
* **Visual clarity:** A fixed-interval horizontal grid, centered on each bar’s close, helps you instantly spot round-number levels (e.g. every \$0.50).
* **Trade annotations:** Every historical entry/exit is automatically marked with arrows and labels—no more scrolling through Trade History.
* **Liquidation lines:** For each entry, the script computes your theoretical liquidation price, based on your chosen leverage, and draws it as a dashed line.
* **Performance metrics:** Total return, maximum drawdown, Sharpe ratio, and win rate are calculated and displayed on-chart, so you don’t have to wrestle with spreadsheets.
---
## How it’s structured
The code lives in a single **strategy**—add it via **Pine Editor → New Strategy** and click **Add to Chart**. Internally, it’s broken into four main sections:
1. **Grid setup:**
* **Inputs:** `gridStep`, `aboveLines`, `belowLines`, `gridColor`, `gridStyle`, `gridWidth`.
* **Persistent array:** stores `line` objects so they survive bar updates.
* **Draw/update logic:** on each confirmed historical bar, the script either recreates all lines (when you change the count) or simply repositions them around the new close.
2. **Entry/exit logic & annotations:**
* **Example system:** 20-period vs. 50-period simple moving-average crossover.
* **Labels & shapes:**
* Green triangles for long entries/exits, red for short.
* A “Long Liq:” or “Short Liq:” label at the point of entry.
3. **Liquidation calculations:**
* **Formula:**
* Long: `P_liq = P_entry × (1 − 1⁄L)`
* Short: `P_liq = P_entry × (1 + 1⁄L)`
* Let the script draw a dashed red (for longs) or dashed green (for shorts) line at each `P_liq`.
4. **Performance metrics:**
* **Built-ins:**
* `strategy.netprofit_percent` → total return %
* `strategy.max_drawdown_percent` → max drawdown %
* `strategy.wintrades` / `strategy.closedtrades` → win rate %
* **Sharpe ratio:** manually computed from per-bar returns, assuming a user-defined risk-free rate and bars-per-year count.
---
## Using & customizing the strategy
1. **Add to your chart.**
* Copy the full script into Pine Editor, select **Strategy**, and hit **Add to Chart**.
2. **Tune your grid.**
* **`Grid Interval ($)`**: e.g. `0.50` for \$0.50 steps.
* **`Lines Above`/`Below`**: how many lines to show on each side of the current price.
* **`Grid Style`**: choose Solid, Dashed, or Dotted; set line width and opacity via the color picker.
3. **Adjust your trading logic.**
* Out of the box, the script uses SMA(20) vs. SMA(50). Swap in any `ta.*` indicator calls you like.
4. **Set leverage & capital.**
* **`Leverage`**: affects the liquidation price.
* **`Initial Capital`** and **`Order Size`**: the strategy uses 100% of equity per trade by default—you can change that in the `strategy()` call.
5. **Review performance.**
* Metrics show up in the Strategy Tester and on-chart label.
* If you want data in the Data Window, expand the script’s name to see the hidden plots for return, drawdown, Sharpe, and win rate.
---
## Behind the code
Below is a high-level walkthrough of the key snippets:
```pinescript
//@version=6
strategy("Grid + Annotations & Liquidations", overlay=true,
initial_capital=100000, default_qty_type=strategy.percent_of_equity,
default_qty_value=100)
// ─ Grid inputs & style mapping ────────────────────────────────────────
gridStep = input.float(0.50, "Grid Interval ($)", minval=0)
aboveLines = input.int(5, "Lines Above", minval=0)
belowLines = input.int(5, "Lines Below", minval=0)
gridColor = input.color(color.new(color.gray, 80), "Grid Color")
gridStyle = input.string("Dashed", "Grid Style", options= )
gridWidth = input.int(1, "Grid Line Width", minval=1, maxval=5)
gridStyleConst = gridStyle == "Solid" ? line.style_solid :
gridStyle == "Dotted"? line.style_dotted :
line.style_dashed
```
* We map a simple string choice into Pine’s `line.style_*` constants.
* `gridStep` drives the spacing in dollars.
```pinescript
// Persist & update lines only when needed
var line gridLines = array.new_line()
if barstate.islastconfirmedhistory
total = aboveLines + belowLines + 1
if array.size(gridLines) != total
// delete & recreate
…
else
// only reposition
…
```
* Wrapping all drawing in `barstate.islastconfirmedhistory` avoids repaint issues.
* The script deletes and rebuilds lines only when you change `aboveLines`/`belowLines`, otherwise it simply moves them.
```pinescript
// MA crossover logic & liquidation labels
fast = ta.sma(close, 20)
slow = ta.sma(close, 50)
if ta.crossover(fast, slow)
strategy.entry("Long", strategy.long)
liq = close * (1 - 1.0 / leverage)
label.new(bar_index, low, text="Long\nLiq: " + str.tostring(liq))
line.new(…, y1=liq, y2=liq, color=color.red, style=line.style_dashed)
```
* Entries trigger both the `strategy.entry` call and a pair of visual cues: a label and a dashed line at the computed liquidation price.
```pinescript
// Performance metrics: draw from built-ins + manual Sharpe
totalRet = strategy.netprofit_percent
maxDD = strategy.max_drawdown_percent
winRate = strategy.closedtrades > 0 ?
(strategy.wintrades / strategy.closedtrades)*100 : 0
// Manual Sharpe calculation
… accumulate per-bar % returns … compute mean, stddev … apply formula …
```
* TradingView gives us return, drawdown, and trade counts out of the box.
* We calculate Sharpe ourselves so you can adjust the risk-free rate and periods per year.
---
## Wrapping up
This one-file strategy is designed to be both **educational** and **practical**:
* **Learn by reading:** every section is commented so you can see how Pine v6 handles arrays, loops, strategy functions, and labels.
* **Customize for your edge:** swap in your own indicators, change leverage, or hook up alerts.
* **Publish & share:** drop it into your public repo with this story as your README, and fellow traders will know exactly how to use it.
Feel free to fork, file issues, or submit pull requests. Happy charting—and may your grid lines always align!